package mge.particles 
{
  import flash.geom.Vector3D;
	/**
   * ...
   * @author ivan
   */
  public class Descriptor 
  {
    
    public function Descriptor() 
    {
      
    }
    
    // System parameters                                        // Ranges
    // ------------------------------------------------------------------------
    public var systemLifeTime:Number = 1;                        // (0,+inf)
    public var emission:int = 10;                                // (0,+inf)
    public var continuous:Boolean;                               // true, false
    
    public var particleLifeTimeMax:Number = 1;                   // (0,+inf)
    public var particleLifeTimeMin:Number = 0;                   // (0,+inf)
    
    public var position:Vector3D = new Vector3D();               // any
    
    
    // Movement parameters                                       // Ranges
    // ------------------------------------------------------------------------
    public var radialAccelerationMax:Number = 0;                 // (-inf,+inf)
    public var radialAccelerationMin:Number = 0;                 // (-inf,+inf)
    
    public var gravityNormDir:Vector3D = new Vector3D(0, 1, 0);  // normalized vector
    public var gravityMax:Number = 0;                            // (-inf,+inf)
    public var gravityMin:Number = 0;                            // (-inf,+inf)
    
    public var velocityNormDir:Vector3D = new Vector3D(0, -1, 0);// normalized vector
    public var velocityMax:Number = 1;                           // (-inf,+inf)
    public var velocityMin:Number = 1;                           // (-inf,+inf)
                                
    public var spread:Number = 0;                                // spread angle [0,360]

    
    // Particle appareance                                       // Ranges
    // ------------------------------------------------------------------------
    public var bitmapIndex:int;
    public var scaleStart:Number = 1;                            // (-inf,+inf)
    public var scaleEnd:Number = 1;                              // (-inf,+inf)
    public var scaleVar:Number = 0;                              // [0,1]
                                
    public var colorStart:uint;                                  // [0x00000000, 0xFFFFFFFF]
    public var colorEnd:uint;                                    // [0x00000000, 0xFFFFFFFF]
    
    public var spinStart:Number = 0;                             // (-inf,+inf)
    public var spinEnd:Number = 0;                               // (-inf,+inf)
    public var spinVar:Number = 0;                               // (-inf,+inf)
   
  }

}